package com.xwltz.rbac.domain;

import javax.validation.constraints.Size;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.xwltz.database.domain.BaseEntity;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * @description 操作日志表 bs_operation_log
 * @information on version 1.0 be created by @xwltz at 2022-06-17 11:09
 */

@Data
@Accessors(chain = true)
@TableName("bs_operation_log")
@ApiModel("操作日志表")
public class OperationLogEntity extends BaseEntity {

	/**
	 * 日志编号 id;
	 */
	@TableId
	@NotNull(message = "[日志编号]不能为空")
	@ApiModelProperty("日志编号")
	private Long id;

	/**
	 * 模块标题 title;
	 */
	@Size(max = 255, message = "编码长度不能超过255")
	@ApiModelProperty("模块标题")
	private String title;

	/**
	 * 业务类型（0其它 1新增 2修改 3删除） type;
	 */
	@Size(max = 255, message = "编码长度不能超过255")
	@ApiModelProperty("业务类型（0其它 1新增 2修改 3删除）")
	private String type;

	/**
	 * 方法名称 action;
	 */
	@Size(max = 255, message = "编码长度不能超过255")
	@ApiModelProperty("方法名称")
	private String action;

	/**
	 * 请求方式 method;
	 */
	@Size(max = 255, message = "编码长度不能超过255")
	@ApiModelProperty("请求方式")
	private String method;

	/**
	 * 操作类别（0其它 1后台用户 2手机端用户） operatorType;
	 */
	@Size(max = 255, message = "编码长度不能超过255")
	@ApiModelProperty("操作类别（0其它 1后台用户 2手机端用户）")
	private String operatorType;

	/**
	 * 操作人 operatorName;
	 */
	@Size(max = 255, message = "编码长度不能超过255")
	@ApiModelProperty("操作人")
	private String operatorName;

	/**
	 * 部门名称 operatorDeptName;
	 */
	@Size(max = 255, message = "编码长度不能超过255")
	@ApiModelProperty("部门名称")
	private String operatorDeptName;

	/**
	 * 请求URL path;
	 */
	@Size(max = 255, message = "编码长度不能超过255")
	@ApiModelProperty("请求URL")
	private String path;

	/**
	 * 主机地址 ip;
	 */
	@Size(max = 255, message = "编码长度不能超过255")
	@ApiModelProperty("主机地址")
	private String ip;

	/**
	 * 操作地点 location;
	 */
	@Size(max = 255, message = "编码长度不能超过255")
	@ApiModelProperty("操作地点")
	private String location;

	/**
	 * 请求参数 request;
	 */
	@Size(max = 255, message = "编码长度不能超过255")
	@ApiModelProperty("请求参数")
	private String request;

	/**
	 * 返回参数 response;
	 */
	@Size(max = 255, message = "编码长度不能超过255")
	@ApiModelProperty("返回参数")
	private String response;


	/**
	 * 错误消息 errorMsg;
	 */
	@Size(max = 255, message = "编码长度不能超过255")
	@ApiModelProperty("错误消息")
	private String errorMsg;

	/**
	 * 操作时间 operationTime;
	 */
	@ApiModelProperty("操作时间")
	private LocalDateTime operationTime;

}
